/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.cadoc.parser;

import org.cadoc.parser.statement.Modifier;

public class LanguageToken {

	public static final Modifier[] SUPPORTED_MODIFIERS = new Modifier[]{
			Modifier.ABSTRACT,
			Modifier.FINAL,
			Modifier.PRIVATE,
			Modifier.PUBLIC,
			Modifier.STATIC,
			Modifier.SYNCHRONIZED,
			Modifier.TRANSIENT};
	
	public static final String[] CLASSES_WITH_NO_IMPORT = new String[]{
		"Boolean","Byte","Character","Class","ClassLoader","Compiler","Double","Float",
		"InheritableThreadLocal", "Integer", "Long", "Math", "Number", "Object", "Package",
		"Process", "Runtime", "RuntimePermission", "SecurityManager", "Short", "StackTraceElement",
		"StrictMath", "String", "StringBuffer", "System", "Thread", "ThreadGroup", "ThreadLocal",
		"Throwable", "Void"
	};
	
	public static final String[] PRIMITIVE_TYPES = new String[]{
		"int","long","boolean","float","double","short","byte","char","void"
	};
	
	public static final String CLASS_DECLARATION 	= "class";
	public static final String PACKAGE_DECLARATION 	= "package";
	public static final String IMPORT_STATEMENT 	= "import";
	public static final String INHERIT_STATEMENT 	= "extends";
	public static final char STATEMENT_CLOSER 		= ';';
	public static final char BLOCK_BEGIN 			= '{';
	public static final char BLOCK_END 				= '}';
	public static final char COMMENT_BEGIN			= '/';
	public static final String CONDITIONAL_STATEMENT= "if";
	public static final String CONDITIONAL_STATEMENT2= "switch";
	public static final String ITERATION_STATEMENT 	= "for";
	public static final String TEST_BEGIN = "(";
	public static final String TEST_END = ")";
	public static final String INTERFACE_REALIZATION= "implements";
	public static final char ASSIGNMENT_OPERATOR 	= '=';
	public static final String ASSIGNMENT_OPERATOR2 = ".set";
	public static final char PARAMETER_BEGIN = '(';
	public static final char PARAMETER_END = ')';
	public static final char PARAMETER_SEPERATOR = ',';
	public static final char PACKAGE_SEPARATOR = '.';
	

}
